package com.star.star.dto;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Getter;
import lombok.Setter;
import lombok.experimental.Accessors;
import org.springframework.format.annotation.DateTimeFormat;

import javax.validation.constraints.Max;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import javax.validation.constraints.Size;
import java.time.LocalDate;
import java.util.Date;

/**
 * 艺人保存DTO
 *
 * @author yangzj
 */
@Getter
@Setter
@Accessors(chain = true)
public class StarSaveWxuserDTO {

    /**
     * 艺名
     */
    @NotBlank
    @Size(max = 20)
    private String name;

    /**
     * 真实姓名
     */
    @Size(max = 20)
    private String realName;

    /**
     * 英文名
     */
    @Size(max = 100)
    private String englishName;

    /**
     * 头像
     */
    @NotBlank
    @Size(max = 255)
    private String avatarUrl;

    /**
     * 性别（0未知 1男 2女）字典：gender
     */
    @NotNull
    private Integer gender;

    /**
     * 手机号码
     */
    @Size(max = 11)
    private String phone;

    /**
     * 邮箱
     */
    @Size(max = 50)
    private String email;

    /**
     * 出生年月
     *
     * @mock 2000-01
     */
    @JsonFormat(pattern = "yyyy-MM")
    @DateTimeFormat(pattern = "yyyy-MM")
    private Date birthDate;

    /**
     * 身高（cm）
     */
    @Max(300)
    private Integer height;

    /**
     * 体重（kg）
     */
    @Max(600)
    private Integer weight;

    /**
     * 血型（字典：blood_type）
     */
    private String bloodType;

    /**
     * 星座（字典：constellation）
     */
    private Integer constellation;

    /**
     * 省
     */
    private Integer province;

    /**
     * 市
     */
    private Integer city;
}
